home *** CD-ROM | disk | FTP | other *** search
/ Info-Mac 3 / Info_Mac_1994-01.iso / Development / General / GCC 1.37.1r15 / Machines / tm-sun386i.h < prev    next >
Text File  |  1990-03-14  |  3KB  |  92 lines

  1. /* Definitions for Intel 386 running SunOS 4.0.
  2.    Copyright (C) 1988 Free Software Foundation, Inc.
  3.  
  4. This file is part of GNU CC.
  5.  
  6. GNU CC is free software; you can redistribute it and/or modify
  7. it under the terms of the GNU General Public License as published by
  8. the Free Software Foundation; either version 1, or (at your option)
  9. any later version.
  10.  
  11. GNU CC is distributed in the hope that it will be useful,
  12. but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  14. GNU General Public License for more details.
  15.  
  16. You should have received a copy of the GNU General Public License
  17. along with GNU CC; see the file COPYING.  If not, write to
  18. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  19.  
  20.  
  21. #include "tm-i386.h"
  22.  
  23. /* Use the Sun assembler syntax.  */
  24.  
  25. #include "tm-sun386.h"
  26.  
  27. /* By default, target has a 80387.  */
  28.  
  29. #define TARGET_DEFAULT 1
  30.  
  31. /* Use crt0.o as a startup file.  */
  32.  
  33. #define STARTFILE_SPEC  \
  34.   "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}"
  35.  
  36. #define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p}\
  37. %{sun386:}"
  38. /* That last item is just to prevent a spurious error.  */
  39.  
  40. /* Extra switches to give the assembler.  */
  41.  
  42. #define ASM_SPEC "-i386"
  43.  
  44. /* Specify predefined symbols in preprocessor.  */
  45.  
  46. #define CPP_PREDEFINES "-Dunix -Di386 -Dsun386 -Dsun"
  47.  
  48. /* Allow #sccs in preprocessor.  */
  49.  
  50. #define SCCS_DIRECTIVE
  51.  
  52. /* Output #ident as a .ident.  */
  53.  
  54. #define ASM_OUTPUT_IDENT(FILE, NAME) fprintf (FILE, "\t.ident \"%s\"\n", NAME);
  55.  
  56. /* We don't want to output SDB debugging information.  */
  57.  
  58. #undef SDB_DEBUGGING_INFO
  59.  
  60. /* We want to output DBX debugging information.  */
  61.  
  62. #define DBX_DEBUGGING_INFO
  63.  
  64. /* Implicit library calls should use memcpy, not bcopy, etc.  */
  65.  
  66. #define TARGET_MEM_FUNCTIONS
  67.  
  68.  
  69. /* Define how to find the value returned by a function.
  70.    VALTYPE is the data type of the value (as a tree).
  71.    If the precise function being called is known, FUNC is its FUNCTION_DECL;
  72.    otherwise, FUNC is 0.  */
  73.  
  74. #define VALUE_REGNO(MODE) \
  75.   (((MODE)==SFmode || (MODE)==DFmode) ? FIRST_FLOAT_REG : 0)
  76.  
  77. /* 1 if N is a possible register number for a function value. */
  78.  
  79. #define FUNCTION_VALUE_REGNO_P(N) ((N) == 0 || (N)== FIRST_FLOAT_REG)
  80.  
  81. /* This is partly guess.  */
  82.  
  83. #undef DBX_REGISTER_NUMBER
  84. #define DBX_REGISTER_NUMBER(n) \
  85.   ((n) == 0 ? 11 : (n)  == 1 ? 9 : (n) == 2 ? 10 : (n) == 3 ? 8    \
  86.    : (n) == 4 ? 5 : (n) == 5 ? 4 : (n) == 6 ? 6 : (n))
  87.  
  88. /* Every debugger symbol must be in the text section.
  89.    Otherwise the assembler or the linker screws up.  */
  90.  
  91. #define DEBUG_SYMS_TEXT
  92.